package com.feng.paper.entity;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * <p>
 * 试卷
 * </p>
 *
 * @author feng
 * @since 2023-03-23 20:30:41
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("el_paper")
@ApiModel(value = "Paper对象", description = "试卷")
public class Paper {

    @ApiModelProperty("试卷ID")
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private String id;

    @ApiModelProperty("用户ID")
    @TableField("user_id")
    private String userId;

    @ApiModelProperty("部门ID")
    @TableField("depart_id")
    private String departId;

    @ApiModelProperty("规则ID")
    @TableField("exam_id")
    private String examId;

    @ApiModelProperty("考试标题")
    @TableField("title")
    private String title;

    @ApiModelProperty("考试时长")
    @TableField("total_time")
    private Integer totalTime;

    @ApiModelProperty("用户时长")
    @TableField("user_time")
    private Integer userTime;

    @ApiModelProperty("试卷总分")
    @TableField("total_score")
    private Integer totalScore;

    @ApiModelProperty("及格分")
    @TableField("qualify_score")
    private Integer qualifyScore;

    @ApiModelProperty("客观分")
    @TableField("obj_score")
    private Integer objScore;

    @ApiModelProperty("主观分")
    @TableField("subj_score")
    private Integer subjScore;

    @ApiModelProperty("用户得分")
    @TableField("user_score")
    private Integer userScore;

    @ApiModelProperty("是否包含简答题")
    @TableField("has_saq")
    private Integer hasSaq;

    @ApiModelProperty("试卷状态")
    @TableField("state")
    private Integer state;

    @ApiModelProperty("创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;

    @ApiModelProperty("更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    @ApiModelProperty("截止时间")
    @TableField("limit_time")
    private Date limitTime;


}
